// Copyright (c) 2016, SolidCP
// SolidCP is distributed under the Creative Commons Share-alike license
// 
// SolidCP is a fork of WebsitePanel:
// Copyright (c) 2015, Outercurve Foundation.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// - Redistributions of source code must  retain  the  above copyright notice, this
//   list of conditions and the following disclaimer.
//
// - Redistributions in binary form  must  reproduce the  above  copyright  notice,
//   this list of conditions  and  the  following  disclaimer in  the documentation
//   and/or other materials provided with the distribution.
//
// - Neither  the  name  of  the  Outercurve Foundation  nor   the   names  of  its
//   contributors may be used to endorse or  promote  products  derived  from  this
//   software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,  BUT  NOT  LIMITED TO, THE IMPLIED
// WARRANTIES  OF  MERCHANTABILITY   AND  FITNESS  FOR  A  PARTICULAR  PURPOSE  ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL,  SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO,  PROCUREMENT  OF  SUBSTITUTE  GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  HOWEVER  CAUSED AND ON
// ANY  THEORY  OF  LIABILITY,  WHETHER  IN  CONTRACT,  STRICT  LIABILITY,  OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE)  ARISING  IN  ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.312
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

// 
// This source code was auto-generated by wsdl, Version=2.0.50727.42.
// 
namespace SolidCP.Providers.Database
{
    using System.Diagnostics;
    using System.Web.Services;
    using System.ComponentModel;
    using System.Web.Services.Protocols;
    using System;
    using System.Xml.Serialization;
    using System.Data;


    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name = "DatabaseServerSoap", Namespace = "http://smbsaas/solidcp/server/")]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(ServiceProviderItem))]
    public partial class DatabaseServer : Microsoft.Web.Services3.WebServicesClientProtocol
    {

        public ServiceProviderSettingsSoapHeader ServiceProviderSettingsSoapHeaderValue;

        private System.Threading.SendOrPostCallback CheckConnectivityOperationCompleted;

        private System.Threading.SendOrPostCallback ExecuteSqlQueryOperationCompleted;

        private System.Threading.SendOrPostCallback ExecuteSqlNonQueryOperationCompleted;

        private System.Threading.SendOrPostCallback ExecuteSqlQuerySafeOperationCompleted;

        private System.Threading.SendOrPostCallback ExecuteSqlNonQuerySafeOperationCompleted;

        private System.Threading.SendOrPostCallback DatabaseExistsOperationCompleted;

        private System.Threading.SendOrPostCallback GetDatabasesOperationCompleted;

        private System.Threading.SendOrPostCallback GetDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback CreateDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback UpdateDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback DeleteDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback TruncateDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback GetTempFileBinaryChunkOperationCompleted;

        private System.Threading.SendOrPostCallback AppendTempFileBinaryChunkOperationCompleted;

        private System.Threading.SendOrPostCallback BackupDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback RestoreDatabaseOperationCompleted;

        private System.Threading.SendOrPostCallback UserExistsOperationCompleted;

        private System.Threading.SendOrPostCallback GetUsersOperationCompleted;

        private System.Threading.SendOrPostCallback GetUserOperationCompleted;

        private System.Threading.SendOrPostCallback CreateUserOperationCompleted;

        private System.Threading.SendOrPostCallback UpdateUserOperationCompleted;

        private System.Threading.SendOrPostCallback DeleteUserOperationCompleted;

        private System.Threading.SendOrPostCallback ChangeUserPasswordOperationCompleted;

        /// <remarks/>
        public DatabaseServer()
        {
			this.Url = "http://localhost/SolidCPServer/DatabaseServer.asmx";
        }

        /// <remarks/>
        public event CheckConnectivityCompletedEventHandler CheckConnectivityCompleted;

        /// <remarks/>
        public event ExecuteSqlQueryCompletedEventHandler ExecuteSqlQueryCompleted;

        /// <remarks/>
        public event ExecuteSqlNonQueryCompletedEventHandler ExecuteSqlNonQueryCompleted;

        /// <remarks/>
        public event ExecuteSqlQuerySafeCompletedEventHandler ExecuteSqlQuerySafeCompleted;

        /// <remarks/>
        public event ExecuteSqlNonQuerySafeCompletedEventHandler ExecuteSqlNonQuerySafeCompleted;

        /// <remarks/>
        public event DatabaseExistsCompletedEventHandler DatabaseExistsCompleted;

        /// <remarks/>
        public event GetDatabasesCompletedEventHandler GetDatabasesCompleted;

        /// <remarks/>
        public event GetDatabaseCompletedEventHandler GetDatabaseCompleted;

        /// <remarks/>
        public event CreateDatabaseCompletedEventHandler CreateDatabaseCompleted;

        /// <remarks/>
        public event UpdateDatabaseCompletedEventHandler UpdateDatabaseCompleted;

        /// <remarks/>
        public event DeleteDatabaseCompletedEventHandler DeleteDatabaseCompleted;

        /// <remarks/>
        public event TruncateDatabaseCompletedEventHandler TruncateDatabaseCompleted;

        /// <remarks/>
        public event GetTempFileBinaryChunkCompletedEventHandler GetTempFileBinaryChunkCompleted;

        /// <remarks/>
        public event AppendTempFileBinaryChunkCompletedEventHandler AppendTempFileBinaryChunkCompleted;

        /// <remarks/>
        public event BackupDatabaseCompletedEventHandler BackupDatabaseCompleted;

        /// <remarks/>
        public event RestoreDatabaseCompletedEventHandler RestoreDatabaseCompleted;

        /// <remarks/>
        public event UserExistsCompletedEventHandler UserExistsCompleted;

        /// <remarks/>
        public event GetUsersCompletedEventHandler GetUsersCompleted;

        /// <remarks/>
        public event GetUserCompletedEventHandler GetUserCompleted;

        /// <remarks/>
        public event CreateUserCompletedEventHandler CreateUserCompleted;

        /// <remarks/>
        public event UpdateUserCompletedEventHandler UpdateUserCompleted;

        /// <remarks/>
        public event DeleteUserCompletedEventHandler DeleteUserCompleted;

        /// <remarks/>
        public event ChangeUserPasswordCompletedEventHandler ChangeUserPasswordCompleted;

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/CheckConnectivity", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public bool CheckConnectivity(string databaseName, string username, string password)
        {
            object[] results = this.Invoke("CheckConnectivity", new object[] {
                        databaseName,
                        username,
                        password});
            return ((bool)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginCheckConnectivity(string databaseName, string username, string password, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("CheckConnectivity", new object[] {
                        databaseName,
                        username,
                        password}, callback, asyncState);
        }

        /// <remarks/>
        public bool EndCheckConnectivity(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((bool)(results[0]));
        }

        /// <remarks/>
        public void CheckConnectivityAsync(string databaseName, string username, string password)
        {
            this.CheckConnectivityAsync(databaseName, username, password, null);
        }

        /// <remarks/>
        public void CheckConnectivityAsync(string databaseName, string username, string password, object userState)
        {
            if ((this.CheckConnectivityOperationCompleted == null))
            {
                this.CheckConnectivityOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCheckConnectivityOperationCompleted);
            }
            this.InvokeAsync("CheckConnectivity", new object[] {
                        databaseName,
                        username,
                        password}, this.CheckConnectivityOperationCompleted, userState);
        }

        private void OnCheckConnectivityOperationCompleted(object arg)
        {
            if ((this.CheckConnectivityCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CheckConnectivityCompleted(this, new CheckConnectivityCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ExecuteSqlQuery", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public System.Data.DataSet ExecuteSqlQuery(string databaseName, string commandText)
        {
            object[] results = this.Invoke("ExecuteSqlQuery", new object[] {
                        databaseName,
                        commandText});
            return ((System.Data.DataSet)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginExecuteSqlQuery(string databaseName, string commandText, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("ExecuteSqlQuery", new object[] {
                        databaseName,
                        commandText}, callback, asyncState);
        }

        /// <remarks/>
        public System.Data.DataSet EndExecuteSqlQuery(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((System.Data.DataSet)(results[0]));
        }

        /// <remarks/>
        public void ExecuteSqlQueryAsync(string databaseName, string commandText)
        {
            this.ExecuteSqlQueryAsync(databaseName, commandText, null);
        }

        /// <remarks/>
        public void ExecuteSqlQueryAsync(string databaseName, string commandText, object userState)
        {
            if ((this.ExecuteSqlQueryOperationCompleted == null))
            {
                this.ExecuteSqlQueryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExecuteSqlQueryOperationCompleted);
            }
            this.InvokeAsync("ExecuteSqlQuery", new object[] {
                        databaseName,
                        commandText}, this.ExecuteSqlQueryOperationCompleted, userState);
        }

        private void OnExecuteSqlQueryOperationCompleted(object arg)
        {
            if ((this.ExecuteSqlQueryCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ExecuteSqlQueryCompleted(this, new ExecuteSqlQueryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ExecuteSqlNonQuery", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void ExecuteSqlNonQuery(string databaseName, string commandText)
        {
            this.Invoke("ExecuteSqlNonQuery", new object[] {
                        databaseName,
                        commandText});
        }

        /// <remarks/>
        public System.IAsyncResult BeginExecuteSqlNonQuery(string databaseName, string commandText, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("ExecuteSqlNonQuery", new object[] {
                        databaseName,
                        commandText}, callback, asyncState);
        }

        /// <remarks/>
        public void EndExecuteSqlNonQuery(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void ExecuteSqlNonQueryAsync(string databaseName, string commandText)
        {
            this.ExecuteSqlNonQueryAsync(databaseName, commandText, null);
        }

        /// <remarks/>
        public void ExecuteSqlNonQueryAsync(string databaseName, string commandText, object userState)
        {
            if ((this.ExecuteSqlNonQueryOperationCompleted == null))
            {
                this.ExecuteSqlNonQueryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExecuteSqlNonQueryOperationCompleted);
            }
            this.InvokeAsync("ExecuteSqlNonQuery", new object[] {
                        databaseName,
                        commandText}, this.ExecuteSqlNonQueryOperationCompleted, userState);
        }

        private void OnExecuteSqlNonQueryOperationCompleted(object arg)
        {
            if ((this.ExecuteSqlNonQueryCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ExecuteSqlNonQueryCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ExecuteSqlQuerySafe", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public System.Data.DataSet ExecuteSqlQuerySafe(string databaseName, string username, string password, string commandText)
        {
            object[] results = this.Invoke("ExecuteSqlQuerySafe", new object[] {
                        databaseName,
                        username,
                        password,
                        commandText});
            return ((System.Data.DataSet)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginExecuteSqlQuerySafe(string databaseName, string username, string password, string commandText, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("ExecuteSqlQuerySafe", new object[] {
                        databaseName,
                        username,
                        password,
                        commandText}, callback, asyncState);
        }

        /// <remarks/>
        public System.Data.DataSet EndExecuteSqlQuerySafe(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((System.Data.DataSet)(results[0]));
        }

        /// <remarks/>
        public void ExecuteSqlQuerySafeAsync(string databaseName, string username, string password, string commandText)
        {
            this.ExecuteSqlQuerySafeAsync(databaseName, username, password, commandText, null);
        }

        /// <remarks/>
        public void ExecuteSqlQuerySafeAsync(string databaseName, string username, string password, string commandText, object userState)
        {
            if ((this.ExecuteSqlQuerySafeOperationCompleted == null))
            {
                this.ExecuteSqlQuerySafeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExecuteSqlQuerySafeOperationCompleted);
            }
            this.InvokeAsync("ExecuteSqlQuerySafe", new object[] {
                        databaseName,
                        username,
                        password,
                        commandText}, this.ExecuteSqlQuerySafeOperationCompleted, userState);
        }

        private void OnExecuteSqlQuerySafeOperationCompleted(object arg)
        {
            if ((this.ExecuteSqlQuerySafeCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ExecuteSqlQuerySafeCompleted(this, new ExecuteSqlQuerySafeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ExecuteSqlNonQuerySafe", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void ExecuteSqlNonQuerySafe(string databaseName, string username, string password, string commandText)
        {
            this.Invoke("ExecuteSqlNonQuerySafe", new object[] {
                        databaseName,
                        username,
                        password,
                        commandText});
        }

        /// <remarks/>
        public System.IAsyncResult BeginExecuteSqlNonQuerySafe(string databaseName, string username, string password, string commandText, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("ExecuteSqlNonQuerySafe", new object[] {
                        databaseName,
                        username,
                        password,
                        commandText}, callback, asyncState);
        }

        /// <remarks/>
        public void EndExecuteSqlNonQuerySafe(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void ExecuteSqlNonQuerySafeAsync(string databaseName, string username, string password, string commandText)
        {
            this.ExecuteSqlNonQuerySafeAsync(databaseName, username, password, commandText, null);
        }

        /// <remarks/>
        public void ExecuteSqlNonQuerySafeAsync(string databaseName, string username, string password, string commandText, object userState)
        {
            if ((this.ExecuteSqlNonQuerySafeOperationCompleted == null))
            {
                this.ExecuteSqlNonQuerySafeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExecuteSqlNonQuerySafeOperationCompleted);
            }
            this.InvokeAsync("ExecuteSqlNonQuerySafe", new object[] {
                        databaseName,
                        username,
                        password,
                        commandText}, this.ExecuteSqlNonQuerySafeOperationCompleted, userState);
        }

        private void OnExecuteSqlNonQuerySafeOperationCompleted(object arg)
        {
            if ((this.ExecuteSqlNonQuerySafeCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ExecuteSqlNonQuerySafeCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/DatabaseExists", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public bool DatabaseExists(string databaseName)
        {
            object[] results = this.Invoke("DatabaseExists", new object[] {
                        databaseName});
            return ((bool)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginDatabaseExists(string databaseName, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("DatabaseExists", new object[] {
                        databaseName}, callback, asyncState);
        }

        /// <remarks/>
        public bool EndDatabaseExists(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((bool)(results[0]));
        }

        /// <remarks/>
        public void DatabaseExistsAsync(string databaseName)
        {
            this.DatabaseExistsAsync(databaseName, null);
        }

        /// <remarks/>
        public void DatabaseExistsAsync(string databaseName, object userState)
        {
            if ((this.DatabaseExistsOperationCompleted == null))
            {
                this.DatabaseExistsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDatabaseExistsOperationCompleted);
            }
            this.InvokeAsync("DatabaseExists", new object[] {
                        databaseName}, this.DatabaseExistsOperationCompleted, userState);
        }

        private void OnDatabaseExistsOperationCompleted(object arg)
        {
            if ((this.DatabaseExistsCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.DatabaseExistsCompleted(this, new DatabaseExistsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetDatabases", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] GetDatabases()
        {
            object[] results = this.Invoke("GetDatabases", new object[0]);
            return ((string[])(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginGetDatabases(System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("GetDatabases", new object[0], callback, asyncState);
        }

        /// <remarks/>
        public string[] EndGetDatabases(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((string[])(results[0]));
        }

        /// <remarks/>
        public void GetDatabasesAsync()
        {
            this.GetDatabasesAsync(null);
        }

        /// <remarks/>
        public void GetDatabasesAsync(object userState)
        {
            if ((this.GetDatabasesOperationCompleted == null))
            {
                this.GetDatabasesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetDatabasesOperationCompleted);
            }
            this.InvokeAsync("GetDatabases", new object[0], this.GetDatabasesOperationCompleted, userState);
        }

        private void OnGetDatabasesOperationCompleted(object arg)
        {
            if ((this.GetDatabasesCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetDatabasesCompleted(this, new GetDatabasesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public SqlDatabase GetDatabase(string databaseName)
        {
            object[] results = this.Invoke("GetDatabase", new object[] {
                        databaseName});
            return ((SqlDatabase)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginGetDatabase(string databaseName, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("GetDatabase", new object[] {
                        databaseName}, callback, asyncState);
        }

        /// <remarks/>
        public SqlDatabase EndGetDatabase(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((SqlDatabase)(results[0]));
        }

        /// <remarks/>
        public void GetDatabaseAsync(string databaseName)
        {
            this.GetDatabaseAsync(databaseName, null);
        }

        /// <remarks/>
        public void GetDatabaseAsync(string databaseName, object userState)
        {
            if ((this.GetDatabaseOperationCompleted == null))
            {
                this.GetDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetDatabaseOperationCompleted);
            }
            this.InvokeAsync("GetDatabase", new object[] {
                        databaseName}, this.GetDatabaseOperationCompleted, userState);
        }

        private void OnGetDatabaseOperationCompleted(object arg)
        {
            if ((this.GetDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetDatabaseCompleted(this, new GetDatabaseCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/CreateDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void CreateDatabase(SqlDatabase database)
        {
            this.Invoke("CreateDatabase", new object[] {
                        database});
        }

        /// <remarks/>
        public System.IAsyncResult BeginCreateDatabase(SqlDatabase database, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("CreateDatabase", new object[] {
                        database}, callback, asyncState);
        }

        /// <remarks/>
        public void EndCreateDatabase(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void CreateDatabaseAsync(SqlDatabase database)
        {
            this.CreateDatabaseAsync(database, null);
        }

        /// <remarks/>
        public void CreateDatabaseAsync(SqlDatabase database, object userState)
        {
            if ((this.CreateDatabaseOperationCompleted == null))
            {
                this.CreateDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateDatabaseOperationCompleted);
            }
            this.InvokeAsync("CreateDatabase", new object[] {
                        database}, this.CreateDatabaseOperationCompleted, userState);
        }

        private void OnCreateDatabaseOperationCompleted(object arg)
        {
            if ((this.CreateDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CreateDatabaseCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/UpdateDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void UpdateDatabase(SqlDatabase database)
        {
            this.Invoke("UpdateDatabase", new object[] {
                        database});
        }

        /// <remarks/>
        public System.IAsyncResult BeginUpdateDatabase(SqlDatabase database, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("UpdateDatabase", new object[] {
                        database}, callback, asyncState);
        }

        /// <remarks/>
        public void EndUpdateDatabase(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void UpdateDatabaseAsync(SqlDatabase database)
        {
            this.UpdateDatabaseAsync(database, null);
        }

        /// <remarks/>
        public void UpdateDatabaseAsync(SqlDatabase database, object userState)
        {
            if ((this.UpdateDatabaseOperationCompleted == null))
            {
                this.UpdateDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnUpdateDatabaseOperationCompleted);
            }
            this.InvokeAsync("UpdateDatabase", new object[] {
                        database}, this.UpdateDatabaseOperationCompleted, userState);
        }

        private void OnUpdateDatabaseOperationCompleted(object arg)
        {
            if ((this.UpdateDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.UpdateDatabaseCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/DeleteDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void DeleteDatabase(string databaseName)
        {
            this.Invoke("DeleteDatabase", new object[] {
                        databaseName});
        }

        /// <remarks/>
        public System.IAsyncResult BeginDeleteDatabase(string databaseName, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("DeleteDatabase", new object[] {
                        databaseName}, callback, asyncState);
        }

        /// <remarks/>
        public void EndDeleteDatabase(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void DeleteDatabaseAsync(string databaseName)
        {
            this.DeleteDatabaseAsync(databaseName, null);
        }

        /// <remarks/>
        public void DeleteDatabaseAsync(string databaseName, object userState)
        {
            if ((this.DeleteDatabaseOperationCompleted == null))
            {
                this.DeleteDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteDatabaseOperationCompleted);
            }
            this.InvokeAsync("DeleteDatabase", new object[] {
                        databaseName}, this.DeleteDatabaseOperationCompleted, userState);
        }

        private void OnDeleteDatabaseOperationCompleted(object arg)
        {
            if ((this.DeleteDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.DeleteDatabaseCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/TruncateDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void TruncateDatabase(string databaseName)
        {
            this.Invoke("TruncateDatabase", new object[] {
                        databaseName});
        }

        /// <remarks/>
        public System.IAsyncResult BeginTruncateDatabase(string databaseName, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("TruncateDatabase", new object[] {
                        databaseName}, callback, asyncState);
        }

        /// <remarks/>
        public void EndTruncateDatabase(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void TruncateDatabaseAsync(string databaseName)
        {
            this.TruncateDatabaseAsync(databaseName, null);
        }

        /// <remarks/>
        public void TruncateDatabaseAsync(string databaseName, object userState)
        {
            if ((this.TruncateDatabaseOperationCompleted == null))
            {
                this.TruncateDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnTruncateDatabaseOperationCompleted);
            }
            this.InvokeAsync("TruncateDatabase", new object[] {
                        databaseName}, this.TruncateDatabaseOperationCompleted, userState);
        }

        private void OnTruncateDatabaseOperationCompleted(object arg)
        {
            if ((this.TruncateDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.TruncateDatabaseCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetTempFileBinaryChunk", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute(DataType = "base64Binary")]
        public byte[] GetTempFileBinaryChunk(string path, int offset, int length)
        {
            object[] results = this.Invoke("GetTempFileBinaryChunk", new object[] {
                        path,
                        offset,
                        length});
            return ((byte[])(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginGetTempFileBinaryChunk(string path, int offset, int length, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("GetTempFileBinaryChunk", new object[] {
                        path,
                        offset,
                        length}, callback, asyncState);
        }

        /// <remarks/>
        public byte[] EndGetTempFileBinaryChunk(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((byte[])(results[0]));
        }

        /// <remarks/>
        public void GetTempFileBinaryChunkAsync(string path, int offset, int length)
        {
            this.GetTempFileBinaryChunkAsync(path, offset, length, null);
        }

        /// <remarks/>
        public void GetTempFileBinaryChunkAsync(string path, int offset, int length, object userState)
        {
            if ((this.GetTempFileBinaryChunkOperationCompleted == null))
            {
                this.GetTempFileBinaryChunkOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetTempFileBinaryChunkOperationCompleted);
            }
            this.InvokeAsync("GetTempFileBinaryChunk", new object[] {
                        path,
                        offset,
                        length}, this.GetTempFileBinaryChunkOperationCompleted, userState);
        }

        private void OnGetTempFileBinaryChunkOperationCompleted(object arg)
        {
            if ((this.GetTempFileBinaryChunkCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetTempFileBinaryChunkCompleted(this, new GetTempFileBinaryChunkCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/AppendTempFileBinaryChunk", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string AppendTempFileBinaryChunk(string fileName, string path, [System.Xml.Serialization.XmlElementAttribute(DataType = "base64Binary")] byte[] chunk)
        {
            object[] results = this.Invoke("AppendTempFileBinaryChunk", new object[] {
                        fileName,
                        path,
                        chunk});
            return ((string)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginAppendTempFileBinaryChunk(string fileName, string path, byte[] chunk, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("AppendTempFileBinaryChunk", new object[] {
                        fileName,
                        path,
                        chunk}, callback, asyncState);
        }

        /// <remarks/>
        public string EndAppendTempFileBinaryChunk(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((string)(results[0]));
        }

        /// <remarks/>
        public void AppendTempFileBinaryChunkAsync(string fileName, string path, byte[] chunk)
        {
            this.AppendTempFileBinaryChunkAsync(fileName, path, chunk, null);
        }

        /// <remarks/>
        public void AppendTempFileBinaryChunkAsync(string fileName, string path, byte[] chunk, object userState)
        {
            if ((this.AppendTempFileBinaryChunkOperationCompleted == null))
            {
                this.AppendTempFileBinaryChunkOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAppendTempFileBinaryChunkOperationCompleted);
            }
            this.InvokeAsync("AppendTempFileBinaryChunk", new object[] {
                        fileName,
                        path,
                        chunk}, this.AppendTempFileBinaryChunkOperationCompleted, userState);
        }

        private void OnAppendTempFileBinaryChunkOperationCompleted(object arg)
        {
            if ((this.AppendTempFileBinaryChunkCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.AppendTempFileBinaryChunkCompleted(this, new AppendTempFileBinaryChunkCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/BackupDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string BackupDatabase(string databaseName, string backupName, bool zipBackup)
        {
            object[] results = this.Invoke("BackupDatabase", new object[] {
                        databaseName,
                        backupName,
                        zipBackup});
            return ((string)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginBackupDatabase(string databaseName, string backupName, bool zipBackup, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("BackupDatabase", new object[] {
                        databaseName,
                        backupName,
                        zipBackup}, callback, asyncState);
        }

        /// <remarks/>
        public string EndBackupDatabase(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((string)(results[0]));
        }

        /// <remarks/>
        public void BackupDatabaseAsync(string databaseName, string backupName, bool zipBackup)
        {
            this.BackupDatabaseAsync(databaseName, backupName, zipBackup, null);
        }

        /// <remarks/>
        public void BackupDatabaseAsync(string databaseName, string backupName, bool zipBackup, object userState)
        {
            if ((this.BackupDatabaseOperationCompleted == null))
            {
                this.BackupDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBackupDatabaseOperationCompleted);
            }
            this.InvokeAsync("BackupDatabase", new object[] {
                        databaseName,
                        backupName,
                        zipBackup}, this.BackupDatabaseOperationCompleted, userState);
        }

        private void OnBackupDatabaseOperationCompleted(object arg)
        {
            if ((this.BackupDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BackupDatabaseCompleted(this, new BackupDatabaseCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/RestoreDatabase", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void RestoreDatabase(string databaseName, string[] fileNames)
        {
            this.Invoke("RestoreDatabase", new object[] {
                        databaseName,
                        fileNames});
        }

        /// <remarks/>
        public System.IAsyncResult BeginRestoreDatabase(string databaseName, string[] fileNames, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("RestoreDatabase", new object[] {
                        databaseName,
                        fileNames}, callback, asyncState);
        }

        /// <remarks/>
        public void EndRestoreDatabase(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void RestoreDatabaseAsync(string databaseName, string[] fileNames)
        {
            this.RestoreDatabaseAsync(databaseName, fileNames, null);
        }

        /// <remarks/>
        public void RestoreDatabaseAsync(string databaseName, string[] fileNames, object userState)
        {
            if ((this.RestoreDatabaseOperationCompleted == null))
            {
                this.RestoreDatabaseOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRestoreDatabaseOperationCompleted);
            }
            this.InvokeAsync("RestoreDatabase", new object[] {
                        databaseName,
                        fileNames}, this.RestoreDatabaseOperationCompleted, userState);
        }

        private void OnRestoreDatabaseOperationCompleted(object arg)
        {
            if ((this.RestoreDatabaseCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.RestoreDatabaseCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/UserExists", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public bool UserExists(string userName)
        {
            object[] results = this.Invoke("UserExists", new object[] {
                        userName});
            return ((bool)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginUserExists(string userName, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("UserExists", new object[] {
                        userName}, callback, asyncState);
        }

        /// <remarks/>
        public bool EndUserExists(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((bool)(results[0]));
        }

        /// <remarks/>
        public void UserExistsAsync(string userName)
        {
            this.UserExistsAsync(userName, null);
        }

        /// <remarks/>
        public void UserExistsAsync(string userName, object userState)
        {
            if ((this.UserExistsOperationCompleted == null))
            {
                this.UserExistsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnUserExistsOperationCompleted);
            }
            this.InvokeAsync("UserExists", new object[] {
                        userName}, this.UserExistsOperationCompleted, userState);
        }

        private void OnUserExistsOperationCompleted(object arg)
        {
            if ((this.UserExistsCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.UserExistsCompleted(this, new UserExistsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetUsers", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] GetUsers()
        {
            object[] results = this.Invoke("GetUsers", new object[0]);
            return ((string[])(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginGetUsers(System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("GetUsers", new object[0], callback, asyncState);
        }

        /// <remarks/>
        public string[] EndGetUsers(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((string[])(results[0]));
        }

        /// <remarks/>
        public void GetUsersAsync()
        {
            this.GetUsersAsync(null);
        }

        /// <remarks/>
        public void GetUsersAsync(object userState)
        {
            if ((this.GetUsersOperationCompleted == null))
            {
                this.GetUsersOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetUsersOperationCompleted);
            }
            this.InvokeAsync("GetUsers", new object[0], this.GetUsersOperationCompleted, userState);
        }

        private void OnGetUsersOperationCompleted(object arg)
        {
            if ((this.GetUsersCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetUsersCompleted(this, new GetUsersCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetUser", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public SqlUser GetUser(string username, string[] databases)
        {
            object[] results = this.Invoke("GetUser", new object[] {
                        username,
                        databases});
            return ((SqlUser)(results[0]));
        }

        /// <remarks/>
        public System.IAsyncResult BeginGetUser(string username, string[] databases, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("GetUser", new object[] {
                        username,
                        databases}, callback, asyncState);
        }

        /// <remarks/>
        public SqlUser EndGetUser(System.IAsyncResult asyncResult)
        {
            object[] results = this.EndInvoke(asyncResult);
            return ((SqlUser)(results[0]));
        }

        /// <remarks/>
        public void GetUserAsync(string username, string[] databases)
        {
            this.GetUserAsync(username, databases, null);
        }

        /// <remarks/>
        public void GetUserAsync(string username, string[] databases, object userState)
        {
            if ((this.GetUserOperationCompleted == null))
            {
                this.GetUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetUserOperationCompleted);
            }
            this.InvokeAsync("GetUser", new object[] {
                        username,
                        databases}, this.GetUserOperationCompleted, userState);
        }

        private void OnGetUserOperationCompleted(object arg)
        {
            if ((this.GetUserCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetUserCompleted(this, new GetUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/CreateUser", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void CreateUser(SqlUser user, string password)
        {
            this.Invoke("CreateUser", new object[] {
                        user,
                        password});
        }

        /// <remarks/>
        public System.IAsyncResult BeginCreateUser(SqlUser user, string password, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("CreateUser", new object[] {
                        user,
                        password}, callback, asyncState);
        }

        /// <remarks/>
        public void EndCreateUser(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void CreateUserAsync(SqlUser user, string password)
        {
            this.CreateUserAsync(user, password, null);
        }

        /// <remarks/>
        public void CreateUserAsync(SqlUser user, string password, object userState)
        {
            if ((this.CreateUserOperationCompleted == null))
            {
                this.CreateUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateUserOperationCompleted);
            }
            this.InvokeAsync("CreateUser", new object[] {
                        user,
                        password}, this.CreateUserOperationCompleted, userState);
        }

        private void OnCreateUserOperationCompleted(object arg)
        {
            if ((this.CreateUserCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CreateUserCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/UpdateUser", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void UpdateUser(SqlUser user, string[] databases)
        {
            this.Invoke("UpdateUser", new object[] {
                        user,
                        databases});
        }

        /// <remarks/>
        public System.IAsyncResult BeginUpdateUser(SqlUser user, string[] databases, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("UpdateUser", new object[] {
                        user,
                        databases}, callback, asyncState);
        }

        /// <remarks/>
        public void EndUpdateUser(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void UpdateUserAsync(SqlUser user, string[] databases)
        {
            this.UpdateUserAsync(user, databases, null);
        }

        /// <remarks/>
        public void UpdateUserAsync(SqlUser user, string[] databases, object userState)
        {
            if ((this.UpdateUserOperationCompleted == null))
            {
                this.UpdateUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnUpdateUserOperationCompleted);
            }
            this.InvokeAsync("UpdateUser", new object[] {
                        user,
                        databases}, this.UpdateUserOperationCompleted, userState);
        }

        private void OnUpdateUserOperationCompleted(object arg)
        {
            if ((this.UpdateUserCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.UpdateUserCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/DeleteUser", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void DeleteUser(string username, string[] databases)
        {
            this.Invoke("DeleteUser", new object[] {
                        username,
                        databases});
        }

        /// <remarks/>
        public System.IAsyncResult BeginDeleteUser(string username, string[] databases, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("DeleteUser", new object[] {
                        username,
                        databases}, callback, asyncState);
        }

        /// <remarks/>
        public void EndDeleteUser(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void DeleteUserAsync(string username, string[] databases)
        {
            this.DeleteUserAsync(username, databases, null);
        }

        /// <remarks/>
        public void DeleteUserAsync(string username, string[] databases, object userState)
        {
            if ((this.DeleteUserOperationCompleted == null))
            {
                this.DeleteUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteUserOperationCompleted);
            }
            this.InvokeAsync("DeleteUser", new object[] {
                        username,
                        databases}, this.DeleteUserOperationCompleted, userState);
        }

        private void OnDeleteUserOperationCompleted(object arg)
        {
            if ((this.DeleteUserCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.DeleteUserCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ChangeUserPassword", RequestNamespace = "http://smbsaas/solidcp/server/", ResponseNamespace = "http://smbsaas/solidcp/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void ChangeUserPassword(string username, string password)
        {
            this.Invoke("ChangeUserPassword", new object[] {
                        username,
                        password});
        }

        /// <remarks/>
        public System.IAsyncResult BeginChangeUserPassword(string username, string password, System.AsyncCallback callback, object asyncState)
        {
            return this.BeginInvoke("ChangeUserPassword", new object[] {
                        username,
                        password}, callback, asyncState);
        }

        /// <remarks/>
        public void EndChangeUserPassword(System.IAsyncResult asyncResult)
        {
            this.EndInvoke(asyncResult);
        }

        /// <remarks/>
        public void ChangeUserPasswordAsync(string username, string password)
        {
            this.ChangeUserPasswordAsync(username, password, null);
        }

        /// <remarks/>
        public void ChangeUserPasswordAsync(string username, string password, object userState)
        {
            if ((this.ChangeUserPasswordOperationCompleted == null))
            {
                this.ChangeUserPasswordOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChangeUserPasswordOperationCompleted);
            }
            this.InvokeAsync("ChangeUserPassword", new object[] {
                        username,
                        password}, this.ChangeUserPasswordOperationCompleted, userState);
        }

        private void OnChangeUserPasswordOperationCompleted(object arg)
        {
            if ((this.ChangeUserPasswordCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ChangeUserPasswordCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        public new void CancelAsync(object userState)
        {
            base.CancelAsync(userState);
        }
    }





    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void CheckConnectivityCompletedEventHandler(object sender, CheckConnectivityCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class CheckConnectivityCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal CheckConnectivityCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public bool Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ExecuteSqlQueryCompletedEventHandler(object sender, ExecuteSqlQueryCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ExecuteSqlQueryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal ExecuteSqlQueryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public System.Data.DataSet Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((System.Data.DataSet)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ExecuteSqlNonQueryCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ExecuteSqlQuerySafeCompletedEventHandler(object sender, ExecuteSqlQuerySafeCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ExecuteSqlQuerySafeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal ExecuteSqlQuerySafeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public System.Data.DataSet Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((System.Data.DataSet)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ExecuteSqlNonQuerySafeCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void DatabaseExistsCompletedEventHandler(object sender, DatabaseExistsCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class DatabaseExistsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal DatabaseExistsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public bool Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetDatabasesCompletedEventHandler(object sender, GetDatabasesCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetDatabasesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetDatabasesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public string[] Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetDatabaseCompletedEventHandler(object sender, GetDatabaseCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetDatabaseCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetDatabaseCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public SqlDatabase Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((SqlDatabase)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void CreateDatabaseCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void UpdateDatabaseCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void DeleteDatabaseCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void TruncateDatabaseCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetTempFileBinaryChunkCompletedEventHandler(object sender, GetTempFileBinaryChunkCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetTempFileBinaryChunkCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetTempFileBinaryChunkCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public byte[] Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((byte[])(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void AppendTempFileBinaryChunkCompletedEventHandler(object sender, AppendTempFileBinaryChunkCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class AppendTempFileBinaryChunkCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal AppendTempFileBinaryChunkCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public string Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void BackupDatabaseCompletedEventHandler(object sender, BackupDatabaseCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BackupDatabaseCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal BackupDatabaseCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public string Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void RestoreDatabaseCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void UserExistsCompletedEventHandler(object sender, UserExistsCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class UserExistsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal UserExistsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public bool Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetUsersCompletedEventHandler(object sender, GetUsersCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetUsersCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetUsersCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public string[] Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetUserCompletedEventHandler(object sender, GetUserCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public SqlUser Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((SqlUser)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void CreateUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void UpdateUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void DeleteUserCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ChangeUserPasswordCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
}
